Augmented Reality or AR is a technology to present various kinds of information by superimposing them over a real space so as to augment the real world. One AR technique is use of a two-dimensional barcode printed on a card, for example. With this technique, a two-dimensional barcode is identified in a captured image from a camera and three-dimensional image data made to correspond to the two-dimensional barcode is displayed on a display device by superimposition at the position of the two-dimensional barcode.
This augmented reality technique, however, lacks variety as visual effects since three-dimensional image data corresponding to a two-dimensional barcode is merely displayed at the position of the two-dimensional barcode on a screen of a display device on which a captured image is displayed.
The present disclosure is an information processing system including a first feature, a second feature different from the first feature, and an information processing apparatus. The information processing apparatus includes: an image acquiring unit that acquires an image of a real space captured by an imaging device; a feature detection unit that detects one or more features from the real space image captured by the image acquiring unit; an image generating unit that generates an image of a virtual space, by placing a virtual object made to correspond to the detected feature at a position based on the position of the feature in the virtual space; and a display control unit that causes an image to be displayed on a display device such that a user sees the virtual space image superimposed on a real space, wherein when the first feature and the second feature are detected in a real space image acquired by the image acquiring unit, the image generating unit places a first virtual object corresponding to the first feature in the virtual space at a position based on the position of the second feature.
The display device may be connected as a peripheral to the information processing apparatus according to the present disclosure or connected over a communications network or the like. Also, the information processing apparatus according to the present disclosure may be constructed in a virtual environment, such as so-called cloud.
A feature placed in a real space may be a marker for so-called AR or a code such as a two-dimensional barcode, for example. Such a feature may be come together with a component such as a card, for example. Such a feature is not limited to a dedicated marker or code. Any article used for other purpose may be used as a feature as long as a display reference for a virtual object can be acquired from it.
According to the present disclosure, since a first virtual object to be displayed at a position based on the second feature is determined depending on a first feature that is detected with the second feature, an augmented reality technique that achieves visual variations can be provided.
The type of augmented reality technique to which the present disclosure is applied is not limited. For example, the present disclosure is applicable to an augmented reality technique of a type that displays a composite image combining a captured image with a virtual space image so that the user can see the virtual space image superimposed on the real space, or a type that projects a virtual space image in the user's field of view so that the user can see the virtual space image superimposed on the real space (e.g., a head-up display or HUD and the like).
When the first feature is detected with the second feature by the feature detection unit in a real space image acquired by the image acquiring unit, the image generating unit may place the first virtual object and a virtual object made to correspond to the second feature in the virtual space at a position based on the position of the second feature.
The first feature may be of a plurality of types, and the image generating unit of the information processing apparatus may decide the first virtual object to be placed at a position based on the position of the second feature according to the type of the first feature that is detected with the second feature.
When the type of the first feature detected with the second feature by the feature detection unit has been updated, the image generating unit of the information processing apparatus may update the first virtual object to be placed at a position based on the position of the second feature to a first virtual object that corresponds to the type of the first feature after the update.
When the type of the first feature detected with the second feature by the feature detection unit has been updated, the image generating unit of the information processing apparatus may also place a first virtual object that corresponds to the type of the first feature after the update in addition to the first virtual object that has been displayed since before the update at a position based on the position of the second feature.
When a plurality of first features and the second feature are detected by the feature detection unit in a real space image acquired by the image acquiring unit, the image generating unit of the information processing apparatus may place first virtual objects respectively corresponding to the plurality of first features at a position based on the position of the second feature, and place virtual objects made to respectively correspond to the plurality of first features at positions that are based on the positions of the plurality of first features in the virtual space.
When a plurality of first features including features of different types and the second feature are detected by the feature detection unit in a real space image acquired by the image acquiring unit, the image generating unit of the information processing apparatus may place at least one of first virtual objects corresponding to the respective types of the plurality of first features in the virtual space at a position based on the position of the second feature, and place virtual objects made to respectively correspond to the types of the plurality of first features at positions that are based on the positions of the first features.
When a plurality of first features and the second feature are detected by the feature detection unit in a captured image, the image generating unit of the information processing apparatus may place a first virtual object that corresponds to the type of a first feature that satisfies a predetermined condition in the virtual space at a position based on the position of the second feature, and place virtual objects made to respectively correspond to the types of the plurality of first features at positions that are based on the positions of the first features.
The image generating unit of the information processing apparatus may place a first virtual object that corresponds to the type of a first feature that is in a predetermined positional relationship with the second feature as the predetermined condition at a position based on the position of the second feature.
The image generating unit of the information processing apparatus may place a first virtual object corresponding to the type of a first feature that has the highest priority, the priority being assigned to respective types of the first feature, among the first features detected by the feature detection unit as the predetermined condition at a position based on the position of the second feature.
When a plurality of first features of different types and the second feature are detected by the feature detection unit in a real space image acquired by the image acquiring unit, the image generating unit of the information processing apparatus may place a first virtual object that corresponds to a combination of the types of the plurality of first features in the virtual space at a position based on the position of the second feature, and place virtual objects made to respectively correspond to the types of the plurality of first features at respective positions that are based on the positions of the first features.
When a plurality of first features of different types and the second feature are detected by the feature detection unit in a real space image, the image generating unit of the information processing apparatus may place a first virtual object that corresponds to an order in which the first features are added with respect to the second feature in the virtual space at a position based on the position of the second feature, and place virtual objects made to respectively correspond to the types of the plurality of first features at respective positions that are based on the positions of the first features.
When a plurality of first features of different types and the second feature are detected by the feature detection unit in a real space image, the image generating unit of the information processing apparatus may place a first virtual object that corresponds to positional relationships of the first features with the second feature in the virtual space at a position based on the position of the second feature, and place virtual objects made to respectively correspond to the types of the plurality of first features at respective positions that are based on the positions of the first features.
When the second feature is detected but the first feature has ceased to be detected by the feature detection unit while a virtual space image is being generated with the first virtual object corresponding to the first feature placed at a position based on the position of the second feature in response to detection of the first feature and the second feature in a real space image acquired by the image acquiring unit, the image generating unit may continue to generate the virtual space image by placing the first virtual object corresponding to the first feature in the virtual space at a position based on the position of the second feature. In this case, if a predetermined condition is satisfied, the image generating unit may generate the virtual space image without placing the first virtual object that has been placed at a position based on the second feature even after the first feature ceased to be detected, at the position based on the second feature. The predetermined condition may be that a predetermined time period elapses since the first feature ceased to be detected, for example.
When the second feature is detected and the first feature is not detected in a real space image by the feature detection unit, the image generating unit may generate the virtual space image by placing a virtual object made to correspond to the second feature in the virtual space at a position based on the position of the second feature.
The image generating unit may place a virtual object made to correspond to the first feature at a position based on the position of the first feature. A virtual object made to correspond to the first feature may be different from the first virtual object which is placed at a position based on the position of the second feature in accordance with the first feature.
The first feature may be graphics representing at least part of a figure of the virtual object made to correspond to the first feature, and the second feature may not be graphics representing the figure of the virtual object made to correspond to the second feature. The second feature thus is not bound by the model of the virtual object made to correspond to the second feature; it may be used for applications other than a game in which a certain character on which the virtual object made to correspond to the second feature is modeled appears, for example.
The first feature may be printed on an information holding device that holds information that enables a user to acquire a predetermined content and remains in the user's possession after the user acquired the predetermined content, and the second feature may be printed on packaging of the information holding device. This enables the information holding device to be reused even after the user acquires the predetermined content and gives a new value to the information holding device.
The present disclosure can also be construed as an information processing apparatus, an information processing system having one or more information processing apparatuses, a computer-implemented method, or a program for execution by a computer. The present disclosure may also be practiced as such a program recorded in a recording medium readable by a computer, other devices or machines or the like. A recording medium readable by a computer or the like refers to a recording medium that stores information such as data and programs by electrical, magnetic, optic, mechanical, or chemical action, and that allows the information to be read by a computer or the like.